package com.base.po.tbk;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class TbkChoiceListExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public TbkChoiceListExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("ID is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("ID is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("ID =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("ID <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("ID >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("ID >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("ID <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("ID <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("ID like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("ID not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("ID in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("ID not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("ID between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("ID not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andParentidIsNull() {
            addCriterion("ParentId is null");
            return (Criteria) this;
        }

        public Criteria andParentidIsNotNull() {
            addCriterion("ParentId is not null");
            return (Criteria) this;
        }

        public Criteria andParentidEqualTo(String value) {
            addCriterion("ParentId =", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidNotEqualTo(String value) {
            addCriterion("ParentId <>", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidGreaterThan(String value) {
            addCriterion("ParentId >", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidGreaterThanOrEqualTo(String value) {
            addCriterion("ParentId >=", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidLessThan(String value) {
            addCriterion("ParentId <", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidLessThanOrEqualTo(String value) {
            addCriterion("ParentId <=", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidLike(String value) {
            addCriterion("ParentId like", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidNotLike(String value) {
            addCriterion("ParentId not like", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidIn(List<String> values) {
            addCriterion("ParentId in", values, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidNotIn(List<String> values) {
            addCriterion("ParentId not in", values, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidBetween(String value1, String value2) {
            addCriterion("ParentId between", value1, value2, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidNotBetween(String value1, String value2) {
            addCriterion("ParentId not between", value1, value2, "parentid");
            return (Criteria) this;
        }

        public Criteria andActivityidIsNull() {
            addCriterion("ActivityId is null");
            return (Criteria) this;
        }

        public Criteria andActivityidIsNotNull() {
            addCriterion("ActivityId is not null");
            return (Criteria) this;
        }

        public Criteria andActivityidEqualTo(String value) {
            addCriterion("ActivityId =", value, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidNotEqualTo(String value) {
            addCriterion("ActivityId <>", value, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidGreaterThan(String value) {
            addCriterion("ActivityId >", value, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidGreaterThanOrEqualTo(String value) {
            addCriterion("ActivityId >=", value, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidLessThan(String value) {
            addCriterion("ActivityId <", value, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidLessThanOrEqualTo(String value) {
            addCriterion("ActivityId <=", value, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidLike(String value) {
            addCriterion("ActivityId like", value, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidNotLike(String value) {
            addCriterion("ActivityId not like", value, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidIn(List<String> values) {
            addCriterion("ActivityId in", values, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidNotIn(List<String> values) {
            addCriterion("ActivityId not in", values, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidBetween(String value1, String value2) {
            addCriterion("ActivityId between", value1, value2, "activityid");
            return (Criteria) this;
        }

        public Criteria andActivityidNotBetween(String value1, String value2) {
            addCriterion("ActivityId not between", value1, value2, "activityid");
            return (Criteria) this;
        }

        public Criteria andNumiidIsNull() {
            addCriterion("NumIid is null");
            return (Criteria) this;
        }

        public Criteria andNumiidIsNotNull() {
            addCriterion("NumIid is not null");
            return (Criteria) this;
        }

        public Criteria andNumiidEqualTo(String value) {
            addCriterion("NumIid =", value, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidNotEqualTo(String value) {
            addCriterion("NumIid <>", value, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidGreaterThan(String value) {
            addCriterion("NumIid >", value, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidGreaterThanOrEqualTo(String value) {
            addCriterion("NumIid >=", value, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidLessThan(String value) {
            addCriterion("NumIid <", value, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidLessThanOrEqualTo(String value) {
            addCriterion("NumIid <=", value, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidLike(String value) {
            addCriterion("NumIid like", value, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidNotLike(String value) {
            addCriterion("NumIid not like", value, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidIn(List<String> values) {
            addCriterion("NumIid in", values, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidNotIn(List<String> values) {
            addCriterion("NumIid not in", values, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidBetween(String value1, String value2) {
            addCriterion("NumIid between", value1, value2, "numiid");
            return (Criteria) this;
        }

        public Criteria andNumiidNotBetween(String value1, String value2) {
            addCriterion("NumIid not between", value1, value2, "numiid");
            return (Criteria) this;
        }

        public Criteria andVolumeIsNull() {
            addCriterion("Volume is null");
            return (Criteria) this;
        }

        public Criteria andVolumeIsNotNull() {
            addCriterion("Volume is not null");
            return (Criteria) this;
        }

        public Criteria andVolumeEqualTo(String value) {
            addCriterion("Volume =", value, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeNotEqualTo(String value) {
            addCriterion("Volume <>", value, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeGreaterThan(String value) {
            addCriterion("Volume >", value, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeGreaterThanOrEqualTo(String value) {
            addCriterion("Volume >=", value, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeLessThan(String value) {
            addCriterion("Volume <", value, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeLessThanOrEqualTo(String value) {
            addCriterion("Volume <=", value, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeLike(String value) {
            addCriterion("Volume like", value, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeNotLike(String value) {
            addCriterion("Volume not like", value, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeIn(List<String> values) {
            addCriterion("Volume in", values, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeNotIn(List<String> values) {
            addCriterion("Volume not in", values, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeBetween(String value1, String value2) {
            addCriterion("Volume between", value1, value2, "volume");
            return (Criteria) this;
        }

        public Criteria andVolumeNotBetween(String value1, String value2) {
            addCriterion("Volume not between", value1, value2, "volume");
            return (Criteria) this;
        }

        public Criteria andCouponIsNull() {
            addCriterion("Coupon is null");
            return (Criteria) this;
        }

        public Criteria andCouponIsNotNull() {
            addCriterion("Coupon is not null");
            return (Criteria) this;
        }

        public Criteria andCouponEqualTo(String value) {
            addCriterion("Coupon =", value, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponNotEqualTo(String value) {
            addCriterion("Coupon <>", value, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponGreaterThan(String value) {
            addCriterion("Coupon >", value, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponGreaterThanOrEqualTo(String value) {
            addCriterion("Coupon >=", value, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponLessThan(String value) {
            addCriterion("Coupon <", value, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponLessThanOrEqualTo(String value) {
            addCriterion("Coupon <=", value, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponLike(String value) {
            addCriterion("Coupon like", value, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponNotLike(String value) {
            addCriterion("Coupon not like", value, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponIn(List<String> values) {
            addCriterion("Coupon in", values, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponNotIn(List<String> values) {
            addCriterion("Coupon not in", values, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponBetween(String value1, String value2) {
            addCriterion("Coupon between", value1, value2, "coupon");
            return (Criteria) this;
        }

        public Criteria andCouponNotBetween(String value1, String value2) {
            addCriterion("Coupon not between", value1, value2, "coupon");
            return (Criteria) this;
        }

        public Criteria andCommissionrateIsNull() {
            addCriterion("CommissionRate is null");
            return (Criteria) this;
        }

        public Criteria andCommissionrateIsNotNull() {
            addCriterion("CommissionRate is not null");
            return (Criteria) this;
        }

        public Criteria andCommissionrateEqualTo(BigDecimal value) {
            addCriterion("CommissionRate =", value, "commissionrate");
            return (Criteria) this;
        }

        public Criteria andCommissionrateNotEqualTo(BigDecimal value) {
            addCriterion("CommissionRate <>", value, "commissionrate");
            return (Criteria) this;
        }

        public Criteria andCommissionrateGreaterThan(BigDecimal value) {
            addCriterion("CommissionRate >", value, "commissionrate");
            return (Criteria) this;
        }

        public Criteria andCommissionrateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("CommissionRate >=", value, "commissionrate");
            return (Criteria) this;
        }

        public Criteria andCommissionrateLessThan(BigDecimal value) {
            addCriterion("CommissionRate <", value, "commissionrate");
            return (Criteria) this;
        }

        public Criteria andCommissionrateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("CommissionRate <=", value, "commissionrate");
            return (Criteria) this;
        }

        public Criteria andCommissionrateIn(List<BigDecimal> values) {
            addCriterion("CommissionRate in", values, "commissionrate");
            return (Criteria) this;
        }

        public Criteria andCommissionrateNotIn(List<BigDecimal> values) {
            addCriterion("CommissionRate not in", values, "commissionrate");
            return (Criteria) this;
        }

        public Criteria andCommissionrateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("CommissionRate between", value1, value2, "commissionrate");
            return (Criteria) this;
        }

        public Criteria andCommissionrateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("CommissionRate not between", value1, value2, "commissionrate");
            return (Criteria) this;
        }

        public Criteria andPriceIsNull() {
            addCriterion("Price is null");
            return (Criteria) this;
        }

        public Criteria andPriceIsNotNull() {
            addCriterion("Price is not null");
            return (Criteria) this;
        }

        public Criteria andPriceEqualTo(BigDecimal value) {
            addCriterion("Price =", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotEqualTo(BigDecimal value) {
            addCriterion("Price <>", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThan(BigDecimal value) {
            addCriterion("Price >", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("Price >=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThan(BigDecimal value) {
            addCriterion("Price <", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("Price <=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceIn(List<BigDecimal> values) {
            addCriterion("Price in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotIn(List<BigDecimal> values) {
            addCriterion("Price not in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Price between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Price not between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andAfterpriceIsNull() {
            addCriterion("AfterPrice is null");
            return (Criteria) this;
        }

        public Criteria andAfterpriceIsNotNull() {
            addCriterion("AfterPrice is not null");
            return (Criteria) this;
        }

        public Criteria andAfterpriceEqualTo(BigDecimal value) {
            addCriterion("AfterPrice =", value, "afterprice");
            return (Criteria) this;
        }

        public Criteria andAfterpriceNotEqualTo(BigDecimal value) {
            addCriterion("AfterPrice <>", value, "afterprice");
            return (Criteria) this;
        }

        public Criteria andAfterpriceGreaterThan(BigDecimal value) {
            addCriterion("AfterPrice >", value, "afterprice");
            return (Criteria) this;
        }

        public Criteria andAfterpriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("AfterPrice >=", value, "afterprice");
            return (Criteria) this;
        }

        public Criteria andAfterpriceLessThan(BigDecimal value) {
            addCriterion("AfterPrice <", value, "afterprice");
            return (Criteria) this;
        }

        public Criteria andAfterpriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("AfterPrice <=", value, "afterprice");
            return (Criteria) this;
        }

        public Criteria andAfterpriceIn(List<BigDecimal> values) {
            addCriterion("AfterPrice in", values, "afterprice");
            return (Criteria) this;
        }

        public Criteria andAfterpriceNotIn(List<BigDecimal> values) {
            addCriterion("AfterPrice not in", values, "afterprice");
            return (Criteria) this;
        }

        public Criteria andAfterpriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("AfterPrice between", value1, value2, "afterprice");
            return (Criteria) this;
        }

        public Criteria andAfterpriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("AfterPrice not between", value1, value2, "afterprice");
            return (Criteria) this;
        }

        public Criteria andShowpicIsNull() {
            addCriterion("ShowPic is null");
            return (Criteria) this;
        }

        public Criteria andShowpicIsNotNull() {
            addCriterion("ShowPic is not null");
            return (Criteria) this;
        }

        public Criteria andShowpicEqualTo(String value) {
            addCriterion("ShowPic =", value, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicNotEqualTo(String value) {
            addCriterion("ShowPic <>", value, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicGreaterThan(String value) {
            addCriterion("ShowPic >", value, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicGreaterThanOrEqualTo(String value) {
            addCriterion("ShowPic >=", value, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicLessThan(String value) {
            addCriterion("ShowPic <", value, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicLessThanOrEqualTo(String value) {
            addCriterion("ShowPic <=", value, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicLike(String value) {
            addCriterion("ShowPic like", value, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicNotLike(String value) {
            addCriterion("ShowPic not like", value, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicIn(List<String> values) {
            addCriterion("ShowPic in", values, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicNotIn(List<String> values) {
            addCriterion("ShowPic not in", values, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicBetween(String value1, String value2) {
            addCriterion("ShowPic between", value1, value2, "showpic");
            return (Criteria) this;
        }

        public Criteria andShowpicNotBetween(String value1, String value2) {
            addCriterion("ShowPic not between", value1, value2, "showpic");
            return (Criteria) this;
        }

        public Criteria andItemurlIsNull() {
            addCriterion("ItemUrl is null");
            return (Criteria) this;
        }

        public Criteria andItemurlIsNotNull() {
            addCriterion("ItemUrl is not null");
            return (Criteria) this;
        }

        public Criteria andItemurlEqualTo(String value) {
            addCriterion("ItemUrl =", value, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlNotEqualTo(String value) {
            addCriterion("ItemUrl <>", value, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlGreaterThan(String value) {
            addCriterion("ItemUrl >", value, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlGreaterThanOrEqualTo(String value) {
            addCriterion("ItemUrl >=", value, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlLessThan(String value) {
            addCriterion("ItemUrl <", value, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlLessThanOrEqualTo(String value) {
            addCriterion("ItemUrl <=", value, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlLike(String value) {
            addCriterion("ItemUrl like", value, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlNotLike(String value) {
            addCriterion("ItemUrl not like", value, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlIn(List<String> values) {
            addCriterion("ItemUrl in", values, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlNotIn(List<String> values) {
            addCriterion("ItemUrl not in", values, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlBetween(String value1, String value2) {
            addCriterion("ItemUrl between", value1, value2, "itemurl");
            return (Criteria) this;
        }

        public Criteria andItemurlNotBetween(String value1, String value2) {
            addCriterion("ItemUrl not between", value1, value2, "itemurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlIsNull() {
            addCriterion("CouponUrl is null");
            return (Criteria) this;
        }

        public Criteria andCouponurlIsNotNull() {
            addCriterion("CouponUrl is not null");
            return (Criteria) this;
        }

        public Criteria andCouponurlEqualTo(String value) {
            addCriterion("CouponUrl =", value, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlNotEqualTo(String value) {
            addCriterion("CouponUrl <>", value, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlGreaterThan(String value) {
            addCriterion("CouponUrl >", value, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlGreaterThanOrEqualTo(String value) {
            addCriterion("CouponUrl >=", value, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlLessThan(String value) {
            addCriterion("CouponUrl <", value, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlLessThanOrEqualTo(String value) {
            addCriterion("CouponUrl <=", value, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlLike(String value) {
            addCriterion("CouponUrl like", value, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlNotLike(String value) {
            addCriterion("CouponUrl not like", value, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlIn(List<String> values) {
            addCriterion("CouponUrl in", values, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlNotIn(List<String> values) {
            addCriterion("CouponUrl not in", values, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlBetween(String value1, String value2) {
            addCriterion("CouponUrl between", value1, value2, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCouponurlNotBetween(String value1, String value2) {
            addCriterion("CouponUrl not between", value1, value2, "couponurl");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("CreateTime is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("CreateTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("CreateTime =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("CreateTime <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("CreateTime >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("CreateTime >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("CreateTime <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("CreateTime <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("CreateTime in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("CreateTime not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("CreateTime between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("CreateTime not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andDatastatusIsNull() {
            addCriterion("DataStatus is null");
            return (Criteria) this;
        }

        public Criteria andDatastatusIsNotNull() {
            addCriterion("DataStatus is not null");
            return (Criteria) this;
        }

        public Criteria andDatastatusEqualTo(Integer value) {
            addCriterion("DataStatus =", value, "datastatus");
            return (Criteria) this;
        }

        public Criteria andDatastatusNotEqualTo(Integer value) {
            addCriterion("DataStatus <>", value, "datastatus");
            return (Criteria) this;
        }

        public Criteria andDatastatusGreaterThan(Integer value) {
            addCriterion("DataStatus >", value, "datastatus");
            return (Criteria) this;
        }

        public Criteria andDatastatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("DataStatus >=", value, "datastatus");
            return (Criteria) this;
        }

        public Criteria andDatastatusLessThan(Integer value) {
            addCriterion("DataStatus <", value, "datastatus");
            return (Criteria) this;
        }

        public Criteria andDatastatusLessThanOrEqualTo(Integer value) {
            addCriterion("DataStatus <=", value, "datastatus");
            return (Criteria) this;
        }

        public Criteria andDatastatusIn(List<Integer> values) {
            addCriterion("DataStatus in", values, "datastatus");
            return (Criteria) this;
        }

        public Criteria andDatastatusNotIn(List<Integer> values) {
            addCriterion("DataStatus not in", values, "datastatus");
            return (Criteria) this;
        }

        public Criteria andDatastatusBetween(Integer value1, Integer value2) {
            addCriterion("DataStatus between", value1, value2, "datastatus");
            return (Criteria) this;
        }

        public Criteria andDatastatusNotBetween(Integer value1, Integer value2) {
            addCriterion("DataStatus not between", value1, value2, "datastatus");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}